add_missing_method_for_QBasicAtomicPointer_on_s390
authorDebian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org>
Tue, 5 Feb 2013 21:52:29 +0000 (21:52 +0000)
committerLisandro Damián Nicanor Pérez Meyer <lisandro@debian.org>
Tue, 5 Feb 2013 21:52:29 +0000 (21:52 +0000)
Gbp-Pq: Name add_missing_method_for_QBasicAtomicPointer_on_s390.patch

src/corelib/arch/qatomic_s390.h

index e167c7c6e3a22af7bf3e10a5273090fd61bb08a2..861df89d6973a01ba7124decea0839aed0e593d8 100644 (file)
@@ -399,6 +399,16 @@ Q_INLINE_TEMPLATE T* QBasicAtomicPointer<T>::fetchAndStoreOrdered(T *newValue)
 }
 
 
+template <typename T>
+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddOrdered(qptrdiff valueToAdd)
+{
+#ifndef __s390x__
+    return (T *)__CS_OLD_LOOP(&_q_value, valueToAdd * sizeof(T), "ar", "", "bcr 15,0\n");
+#else
+    return (T *)__CSG_OLD_LOOP(&_q_value, valueToAdd * sizeof(T), "agr", "", "bcr 15,0\n");
+#endif
+}
+
 template <typename T>
 Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddRelaxed(qptrdiff valueToAdd)
 {